package com.yuandian.ops.workbench.po;

import com.yuandian.po.BasePageSearch;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * <p>
 *  实时告警参数类（运维工作台二级页面）
 * <p>
 *
 * @author linshihe
 * @date 2021/10/25
 * @since 1.0.0
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class NewestAlarmParams extends BasePageSearch {

    /** 系统ID */
    private Integer systemId;


    /** 系统ID列表 */
    private List<String> systemIds;

    /** 系统Name */
    private String systemName;

    /** 业务编码 */
    private String businessCode;

    /** 业务编码 list */
    private List<String> businessCodeList;

    /** 业务名称 */
    private String businessName;

    /** 步骤编码 list */
    private String stepCode;

    /** 步骤编码list */
    private List<String> stepCodeList;

    /** 步骤/接口 编码或名称 */
    private String stepNameOrCode;

    /** 业务类型：1-高频，2-經常，3-低频，4-零散 */
    private Integer businessType;

    /** 业务类型列表 */
    private List<Integer> businessTypeList;

    /** 数据类型：1-业务，2-区域，3-步骤，4-接口，5-高频，6-經常，7-低频，8-零散 */
    private Integer dataType;

    /** 推送状态(0-不满足推送，1-已推送，2-处于观察状态等待推送) */
    private Integer isPush;

    /** 数据类型列表 */
    private List<Integer> dataTypeList;

    /**
     * 告警指标编码:
     *      "BS_FAIL_RATE_10" - "失败率"
     *      "BS_FAIL_RATE_20" - "响应时长"
     *      "BS_FAIL_RATE_30" - "健康度"
     */
    private String alarmIndicatorCode;

    /**
     * 告警指标编码:
     *      "BS_FAIL_RATE_10" - "失败率"
     *      "BS_FAIL_RATE_20" - "响应时长"
     *      "BS_FAIL_RATE_30" - "健康度"
     */
    private List<String> alarmIndicatorCodeList;

    /** 开始时间 */
    private String startTime;

    /** 结束时间 */
    private String endTime;

    /**
     * 观察对象：
     *      1-业务： 5-高频业务、6-经常、7-低频、8-零散
     *      2-区域
     *      3-步骤
     *      4-接口
     */
    private List<Integer> observationObjectList;

    /** 观察对象名称 */
    private String observationObjectName;

    /** 观察对象名称 */
    private String dataTypeName;

    /** 是否由大屏首页请求的接口：0-否 1-是*/
    private Integer isHomePage = 0;
}
